import 'package:flutter/material.dart';

class SnackbarHelper {
  // 显示成功消息（底部绿色）
  static void showSuccess(BuildContext context, String message) {
    _showSnackBar(
      context,
      message,
      Colors.green,
      Icons.check_circle,
    );
  }

  // 显示错误消息（底部红色）
  static void showError(BuildContext context, String message) {
    _showSnackBar(
      context,
      message,
      Colors.red,
      Icons.error_outline,
    );
  }

  // 显示警告消息（底部橙色）
  static void showWarning(BuildContext context, String message) {
    _showSnackBar(
      context,
      message,
      Colors.orange,
      Icons.warning_amber,
    );
  }

  // 私有方法：显示SnackBar
  static void _showSnackBar(
    BuildContext context,
    String message,
    Color backgroundColor,
    IconData icon,
  ) {
    // 先移除可能存在的其他SnackBar
    ScaffoldMessenger.of(context).removeCurrentSnackBar();
    
    // 创建SnackBar
    final snackBar = SnackBar(
      content: Row(
        children: [
          Icon(icon, color: Colors.white, size: 24),
          const SizedBox(width: 12),
          Expanded(
            child: Text(
              message,
              style: const TextStyle(
                fontSize: 16,
                color: Colors.white,
                fontWeight: FontWeight.w500,
              ),
            ),
          ),
        ],
      ),
      backgroundColor: backgroundColor,
      behavior: SnackBarBehavior.fixed,
      duration: const Duration(seconds: 3),
      padding: const EdgeInsets.symmetric(horizontal: 16, vertical: 14),
    );

    // 显示SnackBar
    ScaffoldMessenger.of(context).showSnackBar(snackBar);
  }
}